package com.fatec.lojavirtual.managedbean;

import java.util.List;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;

import com.fatec.lojavirtual.entidade.Usuario;

@ManagedBean
@RequestScoped
public class UsuarioBean {
	
	private Usuario usuarioAtual;
	private List<Usuario> usuarios;
	
	public UsuarioBean(){
		this.usuarioAtual = new Usuario();
//		this.setUsuarios(new ArrayList<Usuario>());
	}

	public void inserir(){
		UsuarioRN usuarioRN = new UsuarioRN();
		FacesMessage msg;
		long aux;
		
		if ((aux = usuarioAtual.getId()) == 0)
		{
			usuarioRN.inserir(usuarioAtual);			
			msg = new FacesMessage("Usuario cadastrado com sucesso!");			
		}
		else
		{
			usuarioRN.atualizar(usuarioAtual);			
			msg = new FacesMessage("Usuario atualizado com sucesso!");
		}
		
		this.setUsuarioAtual(new Usuario());
		
		FacesContext context = FacesContext.getCurrentInstance();
		context.addMessage(null, msg);
	}
	
	public void remover(Usuario u){
		UsuarioRN usuarioRN = new UsuarioRN();
		usuarioRN.remover(u);
	}
	
	public void editar(Usuario u){
			this.setUsuarioAtual(u);
	}
	
	public void cancelar(){
		this.setUsuarioAtual(new Usuario());
	}
	
	public Usuario getUsuarioAtual() {
		return usuarioAtual;
	}

	public void setUsuarioAtual(Usuario usuarioAtual) {
		this.usuarioAtual = usuarioAtual;
	}

	public List<Usuario> getUsuarios() {
		UsuarioRN usuarioRN = new UsuarioRN();
		this.usuarios = usuarioRN.pesquisar();
		return this.usuarios;
	}

	public void setUsuarios(List<Usuario> usuarios) {
		this.usuarios = usuarios;
	}
	
	
}
